Selection of power in power over ethernet systems

ABSTRACT

Embodiments described herein include a Power over Ethernet (PoE) enabled device that uses 2-event classification when allocating power to coupled powered devices (PDs). If the 2-event classification is successful, power sourcing equipment (PSE) on the PoE device allocates a maximum power allotment to the PD. Once powered on, the PD may determine it does not require the maximum power allotment and negotiate a reduction in the power allotted to the PD.

TECHNICAL FIELD

Embodiments presented in this disclosure generally relate to classifyingPower-over-Ethernet (PoE) systems. More specifically, embodimentsdisclosed herein use a two-event classification technique when poweringon powered devices.

BACKGROUND

Some network devices (e.g., routers, switches, servers, and the like)include power sourcing equipment (PSE) that enables the network deviceto provide both data and power over the same Ethernet cable to a powereddevice (PD). A recent trend is to communicatively couple consumerproducts (e.g., appliances, lighting fixtures, exercise machines, etc.),environmental controls (e.g., thermostats, meters, pumps, etc.), andmany other types of components to the Internet. Providing suchconnectivity is referred to generally as the Internet of Things, or morebroadly as the Internet of Everything. One example of achieving thisconnectivity is by using network devices to both provide a dataconnection as well as DC power to the consumer products, environmentalcontrols, and the like.

Before powering up the PDs, the network device classifies the PDs inorder to determine the power to be initially allotted to the PD. Thisclassification typically occurs using layer 1 (i.e., PHY layer)communication signals. The initial allotted power depends on the classor type of the PD coupled to the PSE. Once the classification techniqueis complete, the PD can power up using the allotted power.

BRIEF DESCRIPTION OF THE DRAWINGS

So that the manner in which the above recited features of the presentdisclosure can be understood in detail, a more particular description ofthe disclosure, briefly summarized above, may be had by reference toembodiments, some of which are illustrated in the appended drawings. Itis to be noted, however, that the appended drawings illustrate onlytypical embodiments of this disclosure and are therefore not to beconsidered limiting of its scope, for the disclosure may admit to otherequally effective embodiments.

FIG. 1 illustrates a PoE system including a network device and multiplePDs, according to one embodiment described herein.

FIG. 2 is flow chart for classifying a PD, according to one embodimentdescribed herein.

FIG. 3 is chart illustrating multiple events performed when allocatingpower to a PD, according to one embodiment described herein.

FIG. 4 is a flow chart for classifying PDs using differentclassification techniques, according to one embodiment described herein.

FIG. 5 is a flow chart for classifying PDs using a 2-eventclassification, according to one embodiment described herein.

To facilitate understanding, identical reference numerals have beenused, where possible, to designate identical elements that are common tothe figures. It is contemplated that elements disclosed in oneembodiment may be beneficially utilized on other embodiments withoutspecific recitation.

DESCRIPTION OF EXAMPLE EMBODIMENTS Overview

One embodiment presented in this disclosure includes is a PoE enableddevice that includes PSE configured to provide DC power to a PD and aPoE manager. The PoE manager is configured to perform a firstclassification event associated with the PD and perform a secondclassification event associated with the PD. In response to determiningthe first and second classification events were successful, the PoEmanager is configured to allocate a maximum power allotment to the PD,wherein the maximum power allotment is a predefined value providing themaximum amount of power that the PSE can allocate to any one PD. Afterallocating the maximum power allotment, the PoE manager is configurednegotiate with the PD to reduce power allotted to the PD.

Another embodiment of the present disclosure is a method that includesperforming a first classification event associated with a PD andperforming a second classification event associated with the PD. Inresponse to determining the first and second classification events weresuccessful, the method includes allocating a maximum power allotment tothe PD, wherein the maximum power allotment is a predefined valueproviding the maximum amount of power that a PSE can allocate to any onePD. After allocating the maximum power allotment, the method includesnegotiating with the PD to reduce power allotted to the PD.

Another embodiment of the present disclosure is PoE enabled device thatincludes PSE configured to provide DC power to a PD and a PoE managerconfigured to determine that the PSE has sufficient available power toallot a maximum power allotment to the PD, where the maximum powerallotment is a predefined value providing the maximum amount of powerthat the PSE can allocate to any one PD. Upon determining the PSE hassufficient available power, the PoE manager is configured to perform atwo-event classification of the PD, and in response to determining thetwo-event classification was successful, allocate the maximum powerallotment to the PD. After allocating the maximum power allotment, thePoE manager is configured to negotiate with the PD to reduce powerallotted to the PD. Upon determining the PSE does not have sufficientavailable power, the PoE manager is configured to perform a one-eventclassification of the PD and, in response to determining the one-eventclassification was successful, allocate a power level to the PD based ona class of the PD identified during the one-event classification.

Example Embodiments

Embodiments described herein include a PoE enabled device that uses2-event classification when allocating power to coupled PDs. If the2-event classification is successful, PSE on the PoE device allocates amaximum power allotment to the PD. Once powered on, the PD may determineit does not need this much power and uses a link layer discoveryprotocol (or a vendor-specific variant thereof) to negotiate a reductionin the power allotted to the PD.

One advantage of using the 2-event classification is that the PD doesnot have to monitor its power consumption when first powering on. Bycontrast, when using a 1-event classification, the PoE enabled deviceallocates power to the PD based on identifying a class or type of the PD(e.g., class 0, 1, 2, 3, 4, etc.) where each class corresponds to adifferent power level. For example, the PSE may initially allocate 15 Wto a class 4 PD. When powering on, power capping logic in the PD ensuresthat the power drawn by the PD does not exceed the power initiallyallocated by the PoE device. However, developing software or firmware tomonitor and limit the power drawn by the hardware elements in the PD iscomplicated. If not done properly, the PD may draw more power than it isallocated. The PSE, which includes circuitry for monitoring the powerdrawn by the PDs, may stop transmitting power to the PD if the PDexceeds its allocated limit. Thus, if the power capping logic is notdesigned properly, the PSE may stop transmitting power to the PD beforethe PD has a chance to request an increase in its allocated power.

When performing the 2-event classification, the PoE device allocates themaximum amount of power to the PD—e.g., 30 W. Thus, even if the powercapping logic in the PD is unable to accurately track the PD's powerusage, so long as the usage does not exceed the maximum power allotment,the PSE will not power down the PD. Once the PD is powered on andoperating, the PD can then negotiate a reduction in its power allotmentwith the PoE device—e.g., reducing the allocated power from 30 W to 15W.

In one embodiment, the PoE device determines whether the PSE hassufficient available power to allocate the maximum power allotment tothe PD before performing the 2-event classification. For example,consider multiple PDs coupled to the PoE device, each relying on the PSEfor DC power. Because the PSE can allocate only a fixed amount of power,the PSE may not be able to allocate the maximum power allotment to anynew PDs that are coupled to the PSE. For example, the PSE may have atotal power budget of 80 W but has already allocated 60 W of power toother PDs coupled to the PoE device. The PoE device may perform the2-event classification only if the PSE has sufficient power to allocatethe maximum power allotment to the new PD. In the previous example, thePSE has only 20 W of remaining power to allocate, and thus, does nothave enough available power to allocate the maximum power allocation(e.g., 30 W) to a new PD. As such, the PoE device may instead performthe 1-event classification or refuse to power up the PD until the PSEcan allocate the maximum power allotment.

FIG. 1 illustrates a PoE system 100 including a network device 105 andPDs 150, according to one embodiment described herein. As shown, thenetwork device 105 is coupled to a plurality of PDs 150 each of whichrepresents any type of device capable of receiving DC power using PoE.For example, the PDs 150 may be consumer products, environmentalcontrols, electronic devices, and the like. As shown, the PDs 150include a data communicator 155 which enables data communication viaEthernet cables 135. That is, in this embodiment, the network device 105enables the PDs 150 to communicate with a network (e.g., the Internet)as well as provides power to the PDs 150. Using the data communicators155, the PDs 150 can receive data packets from, as well as transmit datapackets to, the network device 105. In one embodiment, the PoE system100 is part of the Internet of Everything or the Internet of Things. Forexample, the PD 150 may be a light fixture in a home. The network device105 may include an application that turns the light fixture on and off.At sunset, the application may send an instruction to the datacommunicator 155 that turns the light fixture on. Moreover, when thehome owner turns off the light (e.g., when the owner goes to bed) thedata communicator 155 may transmit a data message to the network device105. Although FIG. 1 illustrates that the network device 105 and PDs 150transmit data messages over the Ethernet cables 135, in otherembodiments the network device 105 may provide only power to the PDs 150using PoE. Furthermore, instead of network device 105 (e.g., a router,switch, etc.), a midspan device may be used to provide DC power andforward data packets to the PDs 150.

The network device 105 includes an operating system (OS) 110, PSE 125,and a network adapter 130. The OS 110 may be any OS capable ofperforming the functions described herein. The OS 110 may establish adata plane for forwarding data between devices connected to the networkdevice 105. Furthermore, the OS 110 may maintain a control plane tomanage the flow of the data traffic in the data plane. The OS 110includes a PoE manager 115 for performing PoE functions in the networkdevice 105. For example, the PoE manager 115 may perform one of the PoEfunctions detailed in the IEEE 802.3af or 802.03at standards such asallocating the power supplied by the PSE 125 amongst the PDs 150.

The PSE 125 includes a physical power supply that is, at least in oneembodiment, controlled by the PoE manager 115 to deliver power to thePDs 150. The PSE 125 may include an AC-DC converter that converts the ACpower into DC power. As shown, the PSE 125 provides DC power to each ofthe PDs via the Ethernet cables 135. The PSE 125 may include circuitryfor monitoring the power drawn by each of the PDs 150 to ensure the PDs150 do not draw more power than they are allotted. The power supply (orsupplies) in the PSE 125 may have a maximum, total power capacity thatcan be allocated by the PoE manager to the PDs 150. In addition to thistotal power limitation, a per PD power limit may be enforced. That is,the PSE 125 may provide up to a maximum power allotment to any one ofthe PDs 150. For example, even though the PSE 125 has a total powercapacity of 100 W, the PoE manager 115 may be configured to allocate upto 30 W of power to each PD 150. Thus, if each PD 150 was allocated themaximum power allotment, at most three PDs 150 could be powered by thenetwork device 105 (with 10 W remaining). However, as discussed below,the PDs 150 and the PoE manager 115 can use a negotiation procedure tochange the initial power allocation. For example, if the PoE manager 115initially allocates the maximum power allotment to a PD 150, oncepowered on, the PD 150 can negotiate a lower power allotment. Thisnegotiation can change the available power budget of the PSE 125 and mayincrease the total number of PDs 150 that can be powered by the PSE 125.

In addition to providing power on the Ethernet cables 135, the networkadapter 130 may transmit and receive data signals on the cables 135.Thus, network device 105 may mix the data signal with power signals inorder to simultaneously deliver power and data messages to the PDs 150using the cables 135. However, in other embodiments, the cables 135 maybe used to deliver only power, but not data, to the PDs 150.

FIG. 2 is flow chart 200 for classifying a PD, according to oneembodiment described herein. At block 205, a PoE manager, which islocated on the same PoE device as a PSE, detects a PD device coupled tothe network device or midspan device. As above, the PD may be coupled tothe PoE device (e.g., a network device or midspan device) using a cablesuch as an Ethernet cable. The PoE manager may monitor ports on the PoEdevice used to couple the device to Ethernet cables. In one embodiment,the PoE manager uses the detection technique discussed in the IEEE802.3at or 802.3af standards to determine whether a PD is PoE enabled.To do so, the PSE may generate a fixed voltage which results in acurrent flowing through a signature resistor in the PD. By measuring thecurrent, the PoE manager can determine the value of the signatureresistor in the PD, and based on this value, determine if the PD is PoEenabled.

At block 210, the PoE manager performs a first classification eventusing layer 1 communication signals. Stated differently, the PoE manageruses the PSE to provide signals at the physical (PHY) layer to classifythe PD. In one embodiment, a PoE enabled PD may be classified intodifferent types or classes—e.g., Class 0, 1, 2, 3, etc. During the firstclassification event, the PSE may provide a fixed voltage which powers acurrent source on the PD. By measuring the current generated by thecurrent source, the PSE can identify the class of the PD. However, ifthe first classification event fails, in one example, the PoE managerdoes not allocate any power to the PD—i.e., the PD is not powered on.

At block 215, the PoE manager performs a second classification eventagain using layer 1 communication signals. In one embodiment, the secondclassification event is performed only if the PoE manager was able tosuccessfully identify the class of the PD during the firstclassification event. During the second classification event, the PoEmanager may confirm that the PD is compatible with the IEEE 802.3atstandard. Put differently, the PoE manager confirms that the PD is aPoE+ device.

If the PD is a PoE+ device, during the second classification event, thePSE uses layer 1 communication signals to inform the PD that the PSE hasallocated the maximum power allotment to the PD. Stated differently, thePSE informs a state machine on the PD that the PD can draw the maximumpower allotment when powering up. For example, if the firstclassification event was performed but not the second classificationevent, then the PoE manager allocates power to the PD according to itsclass. For instance, if the PD is a class 0 PD, the PoE managerallocates 7 W to the PD, if the PD is a class 1 PD, the PoE managerallocates 10 W to the PD, and so forth. However, performing the secondclassification event informs the PD that it is allocated the maximumpower allotment—e.g., 30 W—rather than the specific power allotmentcorresponding to the class of the PD. Thus, regardless whether the PD isa class 0, 1, 2, 3, or 4, the PD is allocated the maximum powerallotment.

As used herein, the maximum power allotment is a predefined maximumamount of power that the PSE can assign or allocate to any one PD. Evenif the PSE has available power and can provide more than the maximumpower allotment to a PD, the PoE manager will not increase the powerallotment to the PD beyond the maximum power allotment. For example, ifthe PSE is currently powering only one PD and has the ability togenerate 100 W of power, the PoE manager permits the PD to draw at mostthe maximum power allotment—e.g., 30 W. The embodiments herein assumethe maximum power allotment is 30 W but this value may vary. Forexample, the maximum power allotment may be different in past or futurePoE standards.

In one embodiment, the first and second classification events are partof the 2-event classification defined in the IEEE 802.3at standard.However, this disclosure is not limited to this standard; instead, thefirst and second classification events may be used in any PoE systemwhere classification events are used to determine an initial power toallocate to a PD.

At block 220, the PoE manager allocates the maximum power allotment tothe PD in response to determining that the first and secondclassification events were successful. However, if the secondclassification event fails, the PoE manager may determine that the PD isnot a PoE+ device and allocate power to the PD based on the class typeidentified during the first classification event rather than the maximumpower allotment. Assuming both classification events are successful, atblock 220 the PoE manager determines the PD is a PoE+ device, while thestate machine in the PD knows it is allocated the maximum powerallotment.

In one embodiment, the PD includes power capping logic (which may bepart of the state machine) that monitors the power drawn by the variouscomponents in the PD. However, by performing the second classificationevent and allocating the maximum power allotment, the power cappinglogic may not need to monitor the power usage of the PD when powering onthe PD's hardware and software modules. In contrast, if the PD wasallocated an initial power allotment corresponding to its class type(e.g., 7 W for class 0, 10 W for class 1, and so forth), the powercapping logic monitors the hardware and software modules to ensure thePD does not draw power that exceeds this initial power allotment. In oneembodiment, the power capping logic permits only certain hardware orsoftware modules to operate after the initial power allotment has beenmade to maintain the power usage of the PD below the initial powerallotment. As discussed above, designing power capping logic to monitorthe power drawn by the hardware and software modules in the PD isdifficult. If the power capping logic inadvertently permits the powerdrawn by the PD to exceed the initial power allotment, the PoE managermay instruct the PSE to stop providing power to the PD, forcing the PDto turn off.

In contrast, because the PoE manager initially allocates the maximumpower allotment to the PD when the PD is connected to the PSE, thelikelihood that the PD will exceed this initial allotment is greatlyreduced relative to allocating an initial allotment correspond to theclass type of the PD. In one embodiment, the PD does not use the powercapping logic once the state machine determines the PoE manager hasallocated the maximum power allotment to the PD. The state machine maypermit all the hardware and software modules in the PD to beginoperating without considering whether doing so will exceed the maximumpower allotment. For example, the PD may have been designed to ensurethat the total combined power usage of the various components in the PDnever exceeds the maximum power allotment. However, in anotherembodiment, the state machine may still use the power capping logic tomonitor the power usage of the PD to ensure the power usage does notexceed the maximum power allotment. Even if the power capping logiccannot perfectly monitor and limit the power usage in the PD, becausethe power allotment of the PD is initially set to the maximum powerallotment, the likelihood the PD inadvertently exceeds its allottedpower is greatly reduced.

At block 225, the PoE and the PD negotiate a reduction in the powerallocated to the PD using layer 2 or greater communication signals. Inone embodiment, block 225 occurs after the PD is operational and datacommunication (i.e., layer 2 or greater) is established between the PoEmanager and the PD. In contrast to the detection and classificationevents at blocks 205, 210, and 215, the negotiation performed at block225 occurs using data signals (e.g., logical bits) embodied in layer 2or greater communication signals rather than layer 1 communicationsignals which rely on measuring discrete changes in voltages and/orcurrents. One example of a data communication technique for performingthis negotiation is the Link Layer Discovery Protocol (LLDP). However,other variants of this protocol are also suitable, such asvendor-specific discovery protocols (e.g., Cisco Discovery Protocol orMicrosoft's Link Layer Topology Discovery). These protocols use layer 2or greater network traffic to change the power allotted to the PD.

In one embodiment, the PD initiates the request to reduce its allocatedpower. Once operational, the state machine in the PD can determine thatthe hardware and software modules do not need the maximum powerallotment to function properly. For example, the PD may be allocated 30W, but only draws 20 W. Using LLDP, the PD transmits a message using theEthernet cable to the PoE manager which processes the request andchanges the power allotted to the PD—e.g., reduces the power allotmentfrom 30 W to 20 W. If, for example, a USB device is plugged into the PDthereby increasing its power needs above its current allocated power,the PD may transmit another message to the PoE manager to increase itspower allotment. If the PSE has additional power available, the PoEmanager grants the request which permits the PD to draw additional powerto power the USB.

In another embodiment, the PoE manager initiates the request to reducethe power allocated to the PD. For example, a new PD may be coupled tothe PSE, but the PSE may not have enough available power to supply themaximum power allotment to the new PD—e.g., the PSE may have only 25 Wavailable. Instead of refusing to power up the PD (or allocating the PDless than the maximum power allotment), the PoE manager may transmit arequest to a PD already coupled to the PSE that is still allotted themaximum power allotment. The PoE manager may inform the PD that the PoEmanager is going to lower the power allocated to the PD. If the PD isdrawing less power than the lower power allotment indicated by the PoEmanager, then the PD does not need to change its operational state.However, if the PD draws more power than the lower power allotment, thePD may need to turn off certain functions or disable different softwareor hardware modules to reduce its power consumption. Once the PDconfirms it is drawing power at, or below, the new lower powerallocation, the PoE manager can allocate the newly available power tothe new PD which may enable the PSE to provide the maximum powerallotment to the PD.

FIG. 3 is chart 300 illustrating multiple classification eventsperformed when a PD is first coupled to a PSE, according to oneembodiment described herein. The y-axis of chart 300 illustrates thepower allocated to a PD, while the x-axis illustrates the various eventsthat determine the power allocated to the PD. The spacing between theevents in the x-axis is not intended to indicate the amount of timerequired to perform each of the events as some events may take longerthan others.

At time 0 (e.g., the leftmost portion of the x-axis), the PD is notallocated any power. However, this does not mean the PSE does not supplysome (nominal) amount of power to the PD. For example, during adetection event 305, the PSE drives a voltage on a cable coupling the PDto the PSE which generates a current through a resistor (e.g., asignature resistor) in the PD. As discussed in block 205 of method 200,the PoE manager can measure this current to identify the PD as a PoEenabled device.

If the PD is a PoE device, the PoE manager performs a firstclassification event 310 and a second classification event 315 whichwere discussed at blocks 210 and 215 in method 200. Similar to thedetection event 305, the PSE supplies voltage and/or current to the PDto perform the classification events 310, 315, although the PoE managerhas not yet allocated power to the PD.

Assuming the first and second classification events 310, 315 aresuccessful, the PoE manager allocates the maximum power allotment to thePD—i.e., 30 W. Sometime later, the PoE manager and the PD perform anegotiation event 320 to reduce the power allocated to the PD asdiscussed in block 225 of method 200. Once the negotiation is complete,at time 325 the PoE manager reduces the power allocated to the PD.

FIG. 4 is a flow chart 400 for classifying PDs using differentclassification techniques, according to one embodiment described herein.At block 405, the PoE manager detects a PD which may be the same processas that discussed in block 205 of method 200. Once detected, at block410, the PoE manager determines whether the PSE can allocate the maximumpower allotment to the PD. For example, multiple PDs may be coupled tothe PSE which have already been allocated power. As such, the remainingavailable power budget of the PSE may be less than the maximum powerallotment.

If the PSE has enough available power budget to provide the maximumpower allotment, at block 415 the PoE manager performs a 2-eventclassification as described in blocks 210 and 215 of method 200. If the2-event classification is successful, the PoE manager allocates themaximum power allotment to the PD which permits the PD to become fullyoperational. At block 420, the PoE manager and PD negotiate a reductionin the power allocated to the PD which may be similar to the techniquesdiscussed at block 225 in method 200. Stated differently, the PoEmanager performs the functions described in blocks 415 and 420 onlyafter determining at block 410 that the PSE has sufficient power budgetto allocate the maximum power allotment to the detected PD.

If the PSE does not have sufficient power budget, method 400 proceeds toblock 425 where the PoE manager performs a 1-event classification. Forexample, the PoE manager may perform only the first classification eventdiscussed at block 210 of method 200. During the 1-event classification,the PSE provides a voltage to the PD which the PD uses to generate acurrent. By measuring this current, the PD determines the class type ofthe PD—e.g., class 0, 1, 2, etc. In one embodiment, each class typecorresponds to a different initial power allocation—e.g., 7 W, 10 W, 15W, etc. Once the PoE manager identifies the class type of the PD, themanager allocates the corresponding power to the PD. As discussed above,the PD may include power capping logic to ensure that the varioushardware and software components in the PD do not draw more power thanwhat was initially allocated by the PoE manager. In one embodiment, the1-event classification and the 2-event classification in blocks 415 and425 are the 1-event and 2-event classifications described in IEEE802.3at.

In one embodiment, before allocating the initial power allocation basedon the class type identified at block 415, the PoE manager determineswhether the PSE can allocate the initial power allocation to the PD. Forexample, the PSE may not have enough available power budget to allocatethe initial power allocation. In response, the PoE manager may requestthat other PDs reduce their power consumption, or may elect not toallocate any power to the PD.

After allocating the initial power allocation to the PD, at block 430,the PoE manager and PD may negotiate an increase in the power allocatedto the PD. For example, the power capping logic in the PD may limit thenumber of hardware or software modules operating in the PD to keep thepower drawn by the PD below the initial power allocation. In order tooperate the remaining hardware or software modules, the PD may transmita request to the PoE manager to increase its power allocation. Assumingthe PSE has sufficient available power budget to satisfy the request,the PoE manager grants the PD's request and increases the powerallocated to the device.

FIG. 5 is a flow chart of a method 500 for classifying PDs using a2-event classification, according to one embodiment described herein.Method 500 includes blocks 405, 410, 415, and 420 which are the same asthe blocks illustrated in method 400, and thus, will not be described indetail here. Method 500 differs from method 400 in that the PoE managerdoes not power up the detected PD if the PSE cannot allocate the maximumpower allotment to the PD. That is, if at block 410 the PoE managerdetermines the PSE does not have sufficient budget to allocate themaximum power allotment, method 500 proceeds to block 505 where the PSEstops transmitting power to the PD 505. In one embodiment, the PoEmanager does not perform any type of classification of the PD andinstructs the PSE to stop driving any voltage or currents onto the cableconnecting the PSE to the PD. As a result, the PD remains unpowered.

Method 500 returns to block 410 where the PoE manager again determinesif the PSE can allocate the maximum power allotment to the PD. Forexample, a PD that was previously connected to the PSE may have beendisconnected or powered down, thereby freeing additional power budget.Alternatively, the PoE manager may send requests to one or more PDsalready coupled to the PSE requesting that the PDs reduce their powerconsumption. These request can either be compulsory (i.e., the PDs mustlower their power consumption as instructed by the PoE manager) orvoluntary (i.e., the PDs permit the PoE manager to reduce their powerallocation only if the PDs are consuming less power than they areallocated). If at block 410 the PoE manager determines that the PSE nowhas available power budget to allocate the maximum power allotment,method 500 proceeds to block 415 where the 2-event classification isperformed.

One advantage of using method 500 rather than method 400 is that the PDsused in method 500 may not need to include the power capping logic usedin the PDs operated according to method 400. That is, because in method500 the PoE manager does not allocate an initial power allotment to thePDs based on the class type (which is less than the maximum powerallotment), the PDs do not need power capping logic which ensures thePDs do not draw more power than the PDs are allocated when powering upsince the likelihood the PDs will draw more than the maximum powerallotment is very small. Instead, in method 500, the PoE manager eitherallocates the maximum power allotment to the PD or the PD remainsunpowered. Using PDs that do not contain the power capping logic maymean the PDs operated using method 500 may be cheaper to design andmanufacture than the PDs used in method 400.

In contrast, one advantage of using method 400 rather than method 500 isthat the PSE can potentially power more PDs. Method 500 only powers a PDif the maximum power allotment is available. In contrast, method 400powers a PD according to the class of the PD even if the PSE lackssufficient power to provide the maximum power allotment to the PD. Forexample, using method 400, if the PSE has 20 W of available power, aclass 3 PD can still be allotted 15 W of power and powered on. However,using method 500, this PD would remain unpowered until an additional 10W of power becomes available.

In the following, reference is made to embodiments presented in thisdisclosure. However, the scope of the present disclosure is not limitedto specific described embodiments. Instead, any combination of thefollowing features and elements, whether related to differentembodiments or not, is contemplated to implement and practicecontemplated embodiments. Furthermore, although embodiments disclosedherein may achieve advantages over other possible solutions or over theprior art, whether or not a particular advantage is achieved by a givenembodiment is not limiting of the scope of the present disclosure. Thus,the following aspects, features, embodiments and advantages are merelyillustrative and are not considered elements or limitations of theappended claims except where explicitly recited in a claim(s). Likewise,reference to “the invention” shall not be construed as a generalizationof any inventive subject matter disclosed herein and shall not beconsidered to be an element or limitation of the appended claims exceptwhere explicitly recited in a claim(s).

As will be appreciated by one skilled in the art, the embodimentsdisclosed herein may be embodied as a system, method or computer programproduct. Accordingly, aspects may take the form of an entirely hardwareembodiment, an entirely software embodiment (including firmware,resident software, micro-code, etc.) or an embodiment combining softwareand hardware aspects that may all generally be referred to herein as a“circuit,” “module” or “system.” Furthermore, aspects may take the formof a computer program product embodied in one or more computer readablemedium(s) having computer readable program code embodied thereon.

The present invention may be a system, a method, and/or a computerprogram product. The computer program product may include a computerreadable storage medium (or media) having computer readable programinstructions thereon for causing a processor to carry out aspects of thepresent invention.

Any combination of one or more computer readable medium(s) may beutilized. The computer readable medium may be a computer readable signalmedium or a computer readable storage medium. A computer readablestorage medium may be, for example, but not limited to, an electronic,magnetic, optical, electromagnetic, infrared, or semiconductor system,apparatus, or device, or any suitable combination of the foregoing. Morespecific examples (a non-exhaustive list) of the computer readablestorage medium would include the following: an electrical connectionhaving one or more wires, a portable computer diskette, a hard disk, arandom access memory (RAM), a read-only memory (ROM), an erasableprogrammable read-only memory (EPROM or Flash memory), an optical fiber,a portable compact disc read-only memory (CD-ROM), an optical storagedevice, a magnetic storage device, or any suitable combination of theforegoing. In the context of this document, a computer readable storagemedium is any tangible medium that can contain, or store a program foruse by or in connection with an instruction execution system, apparatusor device.

A computer readable signal medium may include a propagated data signalwith computer readable program code embodied therein, for example, inbaseband or as part of a carrier wave. Such a propagated signal may takeany of a variety of forms, including, but not limited to,electro-magnetic, optical, or any suitable combination thereof. Acomputer readable signal medium may be any computer readable medium thatis not a computer readable storage medium and that can communicate,propagate, or transport a program for use by or in connection with aninstruction execution system, apparatus, or device.

Program code embodied on a computer readable medium may be transmittedusing any appropriate medium, including but not limited to wireless,wireline, optical fiber cable, RF, etc., or any suitable combination ofthe foregoing.

Computer program code for carrying out operations for aspects of thepresent disclosure may be written in any combination of one or moreprogramming languages, including an object oriented programming languagesuch as Java, Smalltalk, C++ or the like and conventional proceduralprogramming languages, such as the “C” programming language or similarprogramming languages. The program code may execute entirely on theuser's computer, partly on the user's computer, as a stand-alonesoftware package, partly on the user's computer and partly on a remotecomputer or entirely on the remote computer or server. In the latterscenario, the remote computer may be connected to the user's computerthrough any type of network, including a local area network (LAN) or awide area network (WAN), or the connection may be made to an externalcomputer (for example, through the Internet using an Internet ServiceProvider).

Aspects of the present disclosure are described below with reference toflowchart illustrations and/or block diagrams of methods, apparatus(systems) and computer program products according to embodimentspresented in this disclosure. It will be understood that each block ofthe flowchart illustrations and/or block diagrams, and combinations ofblocks in the flowchart illustrations and/or block diagrams, can beimplemented by computer program instructions. These computer programinstructions may be provided to a processor of a general purposecomputer, special purpose computer, or other programmable dataprocessing apparatus to produce a machine, such that the instructions,which execute via the processor of the computer or other programmabledata processing apparatus, create means for implementing thefunctions/acts specified in the flowchart and/or block diagram block orblocks.

These computer program instructions may also be stored in a computerreadable medium that can direct a computer, other programmable dataprocessing apparatus, or other devices to function in a particularmanner, such that the instructions stored in the computer readablemedium produce an article of manufacture including instructions whichimplement the function/act specified in the flowchart and/or blockdiagram block or blocks.

The computer program instructions may also be loaded onto a computer,other programmable data processing apparatus, or other devices to causea series of operational steps to be performed on the computer, otherprogrammable apparatus or other devices to produce a computerimplemented process such that the instructions which execute on thecomputer or other programmable apparatus provide processes forimplementing the functions/acts specified in the flowchart and/or blockdiagram block or blocks.

The flowchart and block diagrams in the Figures illustrate thearchitecture, functionality and operation of possible implementations ofsystems, methods and computer program products according to variousembodiments. In this regard, each block in the flowchart or blockdiagrams may represent a module, segment or portion of code, whichcomprises one or more executable instructions for implementing thespecified logical function(s). It should also be noted that, in somealternative implementations, the functions noted in the block may occurout of the order noted in the figures. For example, two blocks shown insuccession may, in fact, be executed substantially concurrently, or theblocks may sometimes be executed in the reverse order, depending uponthe functionality involved. It will also be noted that each block of theblock diagrams and/or flowchart illustration, and combinations of blocksin the block diagrams and/or flowchart illustration, can be implementedby special purpose hardware-based systems that perform the specifiedfunctions or acts, or combinations of special purpose hardware andcomputer instructions.

In view of the foregoing, the scope of the present disclosure isdetermined by the claims that follow.

We claim:
 1. A Power-over-Ethernet (PoE) enabled device, comprising:power sourcing equipment (PSE) configured to provide DC power to apowered device (PD); and a PoE manager configured to: perform a firstclassification event associated with the PD, perform a secondclassification event associated with the PD, before performing the firstand second classification events, determine whether the PSE hassufficient available power to allot a maximum power allotment, whereinthe PSE is configured to power multiple PDs simultaneously, in responseto determining the first and second classification events weresuccessful, allocate the maximum power allotment to the PD, wherein themaximum power allotment is a predefined value providing the maximumamount of power that the PSE can allocate to any one PD, afterallocating the maximum power allotment, negotiate with the PD to reducepower allotted to the PD, and upon determining the PSE does not havesufficient available power to allot the maximum power allotment: performa one-event classification of the PD, in response to determining theone-event classification was successful, allocate a power level to thePD based on a class of the PD identified during the one-eventclassification, and after allocating the power level to the PD,negotiate with the PD to increase power allotted to the PD.
 2. The PoEenabled device of claim 1, wherein the first and second classificationevents are performed using layer 1 communication signals, wherein thenegotiation with the PD to reduce power allotted to the PD is performedusing layer 2 or greater communication signals.
 3. The PoE enableddevice of claim 1, where in the PoE enabled device is one of a networkdevice and a midspan device.
 4. The PoE enabled device of claim 1,wherein negotiating with the PD to reduce power allotted to the PDoccurs in response to receiving a message transmitted from the PD afterthe PD is allocated the maximum power allotment.
 5. The PoE enableddevice of claim 1, wherein the PoE manager is configured to perform thefirst and second classification events upon determining the PSE hassufficient available power.
 6. A method, comprising: performing a firstclassification event associated with a first PD; performing a secondclassification event associated with the first PD; in response todetermining the first and second classification events were successful,allocating a maximum power allotment to the first PD, wherein themaximum power allotment is a predefined value providing the maximumamount of power that a PSE can allocate to any one PD; after allocatingthe maximum power allotment, negotiating with the first PD to reducepower allotted to the first PD; determining whether the PSE hassufficient available power to allot the maximum power allotment beforeperforming first and second classification events associated with asecond PD, wherein the PSE provides power to multiple PDssimultaneously; and upon determining the PSE does not have sufficientavailable power: performing a one-event classification of the second PD,in response to determining the one-event classification was successful,allocating a power level to the second PD based on a class of the secondPD identified during the one-event classification, and after allocatingthe power level to the second PD, negotiating with the second PD toincrease power allotted to the second PD.
 7. The method of claim 6,wherein the first and second classification events associated with boththe first and second PDs are performed using layer 1 communicationsignals, wherein the negotiating with the first and second PDs isperformed using layer 2 or greater communication signals.
 8. The methodof claim 6, further comprising: after allocating the maximum powerallotment, receiving a message from the first PD to begin negotiatingthe reduction of the power allotted to the first PD.
 9. The method ofclaim 6, wherein the first and second classification events associatedwith the first PD are performed upon determining the PSE has sufficientavailable power to allot the maximum power allotment.
 10. A PoE enableddevice, comprising: PSE configured to provide DC power to a PD; a PoEmanager configured to: determine that the PSE has sufficient availablepower to allot a maximum power allotment to the PD, wherein the maximumpower allotment is a predefined value providing the maximum amount ofpower that the PSE can allocate to any one PD; upon determining the PSEhas sufficient available power: perform a two-event classification ofthe PD, in response to determining the two-event classification wassuccessful, allocate the maximum power allotment to the PD, and afterallocating the maximum power allotment, negotiate with the PD to reducepower allotted to the PD; and upon determining the PSE does not havesufficient available power: perform a one-event classification of thePD, and in response to determining the one-event classification wassuccessful, allocate a power level to the PD based on a class of the PDidentified during the one-event classification.
 11. The PoE enableddevice of claim 10, wherein the two-event classification and one-eventclassification comply with IEEE standard 802.3at.
 12. The PoE enableddevice of claim 10, wherein the PoE manager is configured to, afterallocating the power level to the PD, negotiate with the PD to increasepower allotted to the PD using layer 2 or greater communication signals.13. The PoE enabled device of claim 10, wherein the PSE is configured topower multiple PDs coupled to the PoE enabled device simultaneously. 14.The PoE enabled device of claim 10, wherein the two-event and one-eventclassifications are performed using layer 1 communication signals.